home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
050
/
turbo.bug
< prev
next >
Wrap
Text File
|
1985-06-03
|
1KB
|
47 lines
The following program documents a bug in Turbo Pascal's treatment of
variables declared within a record. See notes below.
This is in Turbo 2.0, I have not checked 3.0.
PROGRAM BUG;
CONST
MIN = 1;
VAR
PLAYER : RECORD
NAME : STRING [10]; (* PLAYER'S NAME *)
MIN : INTEGER; (* MINUTES PLAYED *)
END; (* PLAYERRECORD *)
BEGIN (* PROGRAM BUG *)
PLAYER.NAME := 'JEFF COLE ';
PLAYER.MIN := 5;
WITH PLAYER DO
WRITELN (NAME, MIN);
END. (* PROGRAM BUG *)
{ THERE SEEMS TO BE A PROBLEM IN TURBO WITH VARIABLES DECLARED IN RECORDS.
THE ABOVE PROGRAM SHOULD PRINT " JEFF COLE 5 ", BUT USES THE GLOBAL CONST
MIN AND PRINTS " JEFF COLE 1 ". ALSO, IF YOU CHANGE WRITELN (NAME, MIN);
TO : BEGIN (* WITH *)
WRITE (NAME);
WRITELN (MIN);
END; (* WITH *)
(WHICH SHOULD DO THE SAME THING), IT PRINTS " JEFF COLE 5 ". BY MAKING
ANOTHER CHANGE TO : BEGIN (* WITH *)
WRITE (CON, NAME);
WRITELN (CON, MIN);
END; (* WITH *)
YOU WILL GET " JEFF COLE 1 ". I HAVE ALERTED BORLAND ABOUT THIS PROBLEM.
JEFF COLE
ANOKA - RAMSEY COMMUNITY COLLEGE
612-427-2600 }
FF COLE 1 ". I HAVE A